//#include <iostream>
//#include <string>
//#include <vector>
//#include <algorithm>
//using namespace std;
//
//int main()
//{
//    string str1;
//    string str2;
//    cin >> str1;
//    cin >> str2;
//    str1.push_back(' ');
//    str2.push_back(' ');
//    int size1 = str1.size();
//    int size2 = str2.size();
//    int max_long = 0;
//    vector<vector<int>> dp(size1, vector<int>(size2, 0));
//
//    for (int i = 1; i < size1; ++i)
//    {
//        for (int j = 1; j < size2; ++j)
//        {
//            if (str1[i - 1] == str2[j - 1])
//            {
//                dp[i][j] = dp[i - 1][j - 1] + 1;
//                max_long = max(dp[i][j], max_long);
//            }
//            else
//            {
//                dp[i][j] = 0;
//            }
//        }
//    }
//
//    cout << max_long << endl;
//    return 0;
//}